#include "GeneradorDeVariables.h"

GeneradorDeVariables::GeneradorDeVariables(std::string path_a_archivo)
{
	diaActual = 0;
	std::ifstream archivoDeVariables(path_a_archivo.c_str());
	std::string linea;
	while (!archivoDeVariables.eof())
	{
		getline(archivoDeVariables, linea);
		//hay q definir este archivo ¿xml(capaz q es mas facil parsearlo)?
	}
		
}

GeneradorDeVariables::~GeneradorDeVariables()
{
}

void GeneradorDeVariables::generarVariables(std::string& cadena)
{
	cadena.clear();
	cadena += "<?xml version=\"1.0\" encoding=\"UTF-8\"><variables>";
	unsigned cantVariables = variablesPorDia.size();
	for(unsigned i=0; i<cantVariables; i++)
	{
		cadena += "<" + variablesPorDia[diaActual][i]->getNombre() + ">" + 
		     pasarAString(variablesPorDia[diaActual][i]->generarValor()) + 
		     "</" + variablesPorDia[diaActual][i]->getNombre() + ">";	
	}
	cadena += "</variables>";
	if (diaActual == 14)
		diaActual = 0;
	else
		++diaActual;
}

std::string GeneradorDeVariables::pasarAString(unsigned valor)
{
	std::string strValor;
	char* aux = new char[33];
	sprintf(aux, "%d", valor);
	strValor.assign(aux);
	delete []aux;
	return strValor;
}

